package com.decorate.demo05;

import lombok.Data;

import java.text.NumberFormat;

/**
 * 订单上的一条明细,包含商品名,单价,数量,小计
 * 提供商品明细打印输出接口
 */
@Data
public class OrderLine {
    private String itemName; // 商品名称
    private int units; // 商品数量
    private double unitPrice; // 商品单价

    public void printLine() {
        System.out.println(itemName + "        "
                            + units + "        "
                            + formatCurrency(unitPrice)+ "        "
                            + formatCurrency(getSubTotal()));
    }

    public double getSubTotal(){
        return units * unitPrice;
    }

    private String formatCurrency(double money){
        return NumberFormat.getCurrencyInstance().format(money);
    }
}
